import { NgModule } from '@angular/core';
import { RouterModule } from "@angular/router";
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { CommonModule } from '@angular/common';
import { MdlModule } from '@angular-mdl/core';
import {
    TreeModule, BreadcrumbModule, ToolbarModule, InputTextModule, SelectButtonModule,
    InputTextareaModule, PanelModule, ButtonModule, AutoCompleteModule, InputSwitchModule,
    ConfirmDialogModule, ConfirmationService, CarouselModule, TabViewModule, PanelMenuModule, SharedModule,
    ToggleButtonModule, DropdownModule, CheckboxModule
} from 'primeng/primeng';
import { DataViewModule } from 'primeng/dataview';
import { TableModule } from 'primeng/table';
import { QkSharedModule } from '../common/module/qkshare.module';
import { scheduleRoutes } from './schedule.routes';
import { ScheduleComponent } from './schedule.component';
import { ScheduleListComponent } from './schedule-list.component';
import { ScheduleDetailComponent } from './schedule-detail.component';


@NgModule({
    imports: [
        FormsModule,
        ReactiveFormsModule,
        CommonModule,
        MdlModule,
        TreeModule,
        BreadcrumbModule,
        ToolbarModule,
        PanelModule,
        ButtonModule,
        DropdownModule,
        AutoCompleteModule,
        InputTextModule,
        InputTextareaModule,
        InputSwitchModule,
        ToggleButtonModule,
        TabViewModule,
        CarouselModule,
        PanelMenuModule,
        SharedModule,
        SelectButtonModule,
        DropdownModule,
        TableModule,
        CheckboxModule,
        QkSharedModule,
        DataViewModule,
        ConfirmDialogModule,
        RouterModule.forChild(scheduleRoutes)
    ],
    declarations: [
        ScheduleComponent,
        ScheduleListComponent, 
        ScheduleDetailComponent 
    ],
    entryComponents: [
    ],
    exports: [
    ],
    providers: [
        ConfirmationService
    ]
})
export class ScheduleModule { }
